package com.example.image

import android.content.Context
import android.net.Uri
import android.widget.ImageView

import java.io.File

/**
 * Author: Jason Zhang
 * Date: 2025/1/10
 * Desc: 图片加载接口
 */
interface IImgLoader {

    /**
     * 从文件中加载图片
     */
    fun loadFileIntoImageView(ctx: Context, file: File, target: ImageView, option: ImgOptions)

    /**
     * 从网络中加载图片
     */
    fun loadUrlIntoImageView(ctx: Context, url: String, target: ImageView, option: ImgOptions)

    /**
     * 从资源文件下加载图片
     */
    fun loadResIntoImageView(ctx: Context, resId: Int, target: ImageView, option: ImgOptions)

    /**
     * 从二进制流中加载图片
     */
    fun loadByteArrayIntoImageView(ctx: Context, byteArray: ByteArray, target: ImageView, option: ImgOptions)

    /**
     * 从Uri路径中加载图片
     */
    fun loadUriIntoImageView(ctx: Context, uri: Uri, target: ImageView, option: ImgOptions)


}